package com.rla.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.rla.common.core.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 线上商品（套餐、积分商品）共用对象 base_drug_online
 *
 * @author rla
 * @date 2025-08-04
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("base_drug_online")
public class BaseDrugOnline extends BaseEntity {

    private static final long serialVersionUID=1L;

    /**
     * 线上商品id
     */
    @TableId(value = "id")
    private String id;
    /**
     * 商品编号
     */
    private String drugCode;
    /**
     * 商品分类
     */
    private String drugType;
    /**
     * 商品名称
     */
    private String drugName;
    /**
     * 商品图片
     */
    private String image;
    /**
     * 轮播图
     */
    private String sliderImage;
    /**
     * 主图视频
     */
    private String videoUrl;
    /**
     * 商品简介
     */
    private String productInfo;
    /**
     * 商品详情
     */
    private String productDetails;
    /**
     * 排序
     */
    private Long sort;
    /**
     * 销量
     */
    private String sales;
    /**
     * 状态（0：未上架，1：上架）
     */
    private String isShow;
    /**
     * 状态（0：不推荐，1：首页推荐，2：商品推荐，3：热搜推荐）多选
     */
    private String isRecommend;
    /**
     * 是否包邮（0、不包邮，1、包邮）
     */
    private String isFreeShipping;
    /**
     * 是否组合选品（0、否，1、是）
     */
    private String isCombination;
    /**
     * 是否置顶（0、否，1、是）
     */
    private String isTop;
    /**
     * 商品品类（0、普通商品，1、套餐商品，2、积分商品）
     */
    private String goodsCategory;
    /**
     * 最后一次上架时间
     */
    private Date showTime;
    /**
     * 有效期（0：长期有效，1:临时有效）
     */
    private String isExpiration;
    /**
     * 开始效期时间
     */
    private Date startExpirationDate;
    /**
     * 截止效期时间
     */
    private Date endExpirationDate;
    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @TableLogic
    private String delFlag;
    /**
     * 套餐包价格
     */
    private BigDecimal packagePrice;
    /**
     * 套餐包原价（划线价）
     */
    private BigDecimal dashingPrice;

    private String pyCode;

    private int salesNum;
    private int virtualSalesNum;

    private String pdPackageCode;
}
